home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / lisp / gcl-1.000 / gcl-1 / gcl-1.0 / cmpnew / cmpblock.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-10  |  12.2 KB  |  446 lines

  1.  
  2. #include <cmpinclude.h>
  3. #include "cmpblock.h"
  4. init_cmpblock(){do_init(VV);}
  5. /*    local entry for function MAKE-BLK    */
  6.  
  7. static object LI1(va_alist)
  8.     va_dcl 
  9. {    
  10.     va_list ap;
  11.     int narg = VFUN_NARGS; VMB1 VMS1 VMV1
  12.     {object V1;
  13.     object V2;
  14.     object V3;
  15.     object V4;
  16.     object V5;
  17.     object V6;
  18.     object V7;
  19.     narg= narg - 0;
  20.     va_start(ap);
  21.     {
  22.     parse_key_new(narg,Vcs +0,&LI1key,ap);
  23.     V1=(Vcs[0]);
  24.     V2=(Vcs[1]);
  25.     V3=(Vcs[2]);
  26.     V4=(Vcs[3]);
  27.     V5=(Vcs[4]);
  28.     V6=(Vcs[5]);
  29.     V7=(Vcs[6]);
  30.     base[0]= VV[0];
  31.     base[1]= (V1);
  32.     base[2]= (V2);
  33.     base[3]= (V3);
  34.     base[4]= (V4);
  35.     base[5]= (V5);
  36.     base[6]= (V6);
  37.     base[7]= (V7);
  38.     vs_top=(vs_base=base+0)+8;
  39.     siLmake_structure();
  40.     vs_top=sup;
  41.     {object V8 = vs_base[0];
  42.     VMR1(V8)}}
  43.     }}
  44. /*    local entry for function C1BLOCK    */
  45.  
  46. static object LI2(V10)
  47.  
  48. register object V10;
  49. {     VMB2 VMS2 VMV2
  50.     bds_check;
  51. TTL:;
  52.     if(!(endp((V10)))){
  53.     goto T9;}
  54.     (void)((*(LnkLI26))(VV[1],small_fixnum(1),small_fixnum(0)));
  55. T9:;
  56.     if(type_of(car((V10)))==t_symbol){
  57.     goto T12;}
  58.     (void)((VFUN_NARGS=2,(*(LnkLI27))(VV[2],car((V10)))));
  59. T12:;
  60.     {register object V11;
  61.     object V12;
  62.     V11= (VFUN_NARGS=8,(*(LnkLI28))(VV[3],car((V10)),VV[4],Cnil,VV[5],Cnil,VV[6],Cnil));
  63.     bds_bind(VV[7],make_cons((V11),symbol_value(VV[7])));
  64.     V12= (*(LnkLI29))(cdr((V10)));
  65.     if((structure_ref((V11),VV[0],3))!=Cnil){
  66.     goto T19;}
  67.     if((structure_ref((V11),VV[0],2))==Cnil){
  68.     goto T18;}
  69. T19:;
  70.     setq(VV[8],number_plus(symbol_value(VV[8]),small_fixnum(1)));
  71. T18:;
  72.     if((structure_ref((V11),VV[0],3))!=Cnil){
  73.     goto T24;}
  74.     if((structure_ref((V11),VV[0],2))!=Cnil){
  75.     goto T24;}
  76.     if((structure_ref((V11),VV[0],1))==Cnil){
  77.     goto T25;}
  78. T24:;
  79.     V13= (*(LnkLI30))(cadr((V12)));
  80.     {object V14 = list(4,VV[1],/* INLINE-ARGS */V13,(V11),(V12));
  81.     bds_unwind1;
  82.     VMR2(V14)}
  83. T25:;
  84.     {object V15 = (V12);
  85.     bds_unwind1;
  86.     VMR2(V15)}}
  87. }
  88. /*    function definition for C2BLOCK    */
  89.  
  90. static L3()
  91. {register object *base=vs_base;
  92.     register object *sup=base+VM3; VC3
  93.     vs_reserve(VM3);
  94.     {register object V16;
  95.     object V17;
  96.     check_arg(2);
  97.     V16=(base[0]);
  98.     V17=(base[1]);
  99.     vs_top=sup;
  100. TTL:;
  101.     if((structure_ref((V16),VV[0],3))==Cnil){
  102.     goto T32;}
  103.     base[2]= (*(LnkLI31))((V16),(V17));
  104.     vs_top=(vs_base=base+2)+1;
  105.     return;
  106. T32:;
  107.     if((structure_ref((V16),VV[0],2))==Cnil){
  108.     goto T35;}
  109.     base[2]= (*(LnkLI32))((V16),(V17));
  110.     vs_top=(vs_base=base+2)+1;
  111.     return;
  112. T35:;
  113.     base[2]= (V16);
  114.     base[3]= (V17);
  115.     vs_top=(vs_base=base+2)+2;
  116.     (void) (*Lnk33)();
  117.     return;
  118.     }
  119. }
  120. /*    function definition for C2BLOCK-LOCAL    */
  121.  
  122. static L4()
  123. {register object *base=vs_base;
  124.     register object *sup=base+VM4; VC4
  125.     vs_reserve(VM4);
  126.     {object V18;
  127.     object V19;
  128.     check_arg(2);
  129.     V18=(base[0]);
  130.     V19=(base[1]);
  131.     vs_top=sup;
  132. TTL:;
  133.     (void)(structure_set((V18),VV[0],4,symbol_value(VV[9])));
  134.     (void)(structure_set((V18),VV[0],5,symbol_value(VV[10])));
  135.     base[2]= (V19);
  136.     vs_top=(vs_base=base+2)+1;
  137.     (void) (*Lnk34)();
  138.     return;
  139.     }
  140. }
  141. /*    local entry for function C2BLOCK-CLB    */
  142.  
  143. static object LI5(V22,V23)
  144.  
  145. register object V22;object V23;
  146. {     VMB5 VMS5 VMV5
  147.     bds_check;
  148. TTL:;
  149.     bds_bind(VV[11],symbol_value(VV[11]));
  150.     (void)(structure_set((V22),VV[0],4,symbol_value(VV[9])));
  151.     (void)(structure_set((V22),VV[0],5,symbol_value(VV[10])));
  152.     V24= (*(LnkLI35))();
  153.     (void)(structure_set((V22),VV[0],2,/* INLINE-ARGS */V24));
  154.     princ_str("\n    ",VV[12]);
  155.     V25= structure_ref((V22),VV[0],2);
  156.     (void)((*(LnkLI36))(/* INLINE-ARGS */V25));
  157.     princ_str("=alloc_frame_id();",VV[12]);
  158.     princ_str("\n    frs_push(FRS_CATCH,",VV[12]);
  159.     V26= structure_ref((V22),VV[0],2);
  160.     (void)((*(LnkLI36))(/* INLINE-ARGS */V26));
  161.     princ_str(");",VV[12]);
  162.     princ_str("\n    if(nlj_active)",VV[12]);
  163.     princ_str("\n    {nlj_active=FALSE;frs_pop();",VV[12]);
  164.     (void)((VFUN_NARGS=2,(*(LnkLI37))(VV[13],VV[14])));
  165.     princ_char(125,VV[12]);
  166.     princ_str("\n    else{",VV[12]);
  167.     base[1]= make_cons(VV[16],symbol_value(VV[15]));
  168.     bds_bind(VV[15],base[1]);
  169.     base[2]= (V23);
  170.     vs_top=(vs_base=base+2)+1;
  171.     (void) (*Lnk34)();
  172.     vs_top=sup;
  173.     bds_unwind1;
  174.     princ_str("\n    }",VV[12]);
  175.     {object V27 = Cnil;
  176.     bds_unwind1;
  177.     VMR5(V27)}
  178. }
  179. /*    local entry for function C2BLOCK-CCB    */
  180.  
  181. static object LI6(V30,V31)
  182.  
  183. register object V30;object V31;
  184. {     VMB6 VMS6 VMV6
  185.     bds_check;
  186. TTL:;
  187.     bds_bind(VV[11],symbol_value(VV[11]));
  188.     bds_bind(VV[17],symbol_value(VV[17]));
  189.     bds_bind(VV[18],symbol_value(VV[18]));
  190.     (void)(structure_set((V30),VV[0],4,symbol_value(VV[9])));
  191.     (void)(structure_set((V30),VV[0],5,symbol_value(VV[10])));
  192.     V32= (*(LnkLI35))();
  193.     (void)(structure_set((V30),VV[0],2,/* INLINE-ARGS */V32));
  194.     V33= structure_ref((V30),VV[0],0);
  195.     V34= (*(LnkLI38))(/* INLINE-ARGS */V33);
  196.     (void)(structure_set((V30),VV[0],6,/* INLINE-ARGS */V34));
  197.     princ_str("\n    ",VV[12]);
  198.     V35= structure_ref((V30),VV[0],2);
  199.     (void)((*(LnkLI36))(/* INLINE-ARGS */V35));
  200.     princ_str("=alloc_frame_id();",VV[12]);
  201.     princ_str("\n    ",VV[12]);
  202.     V36= structure_ref((V30),VV[0],2);
  203.     (void)((*(LnkLI36))(/* INLINE-ARGS */V36));
  204.     princ_str("=MMcons(",VV[12]);
  205.     V37= structure_ref((V30),VV[0],2);
  206.     (void)((*(LnkLI36))(/* INLINE-ARGS */V37));
  207.     princ_char(44,VV[12]);
  208.     (void)((VFUN_NARGS=0,(*(LnkLI39))()));
  209.     princ_str(");",VV[12]);
  210.     V38= structure_ref((V30),VV[0],2);
  211.     (void)((*(LnkLI40))(/* INLINE-ARGS */V38));
  212.     V39= (*(LnkLI41))();
  213.     (void)(structure_set((V30),VV[0],3,/* INLINE-ARGS */V39));
  214.     princ_str("\n    frs_push(FRS_CATCH,",VV[12]);
  215.     V40= structure_ref((V30),VV[0],2);
  216.     (void)((*(LnkLI42))(/* INLINE-ARGS */V40));
  217.     princ_str(");",VV[12]);
  218.     princ_str("\n    if(nlj_active)",VV[12]);
  219.     princ_str("\n    {nlj_active=FALSE;frs_pop();",VV[12]);
  220.     (void)((VFUN_NARGS=2,(*(LnkLI37))(VV[13],VV[14])));
  221.     princ_char(125,VV[12]);
  222.     princ_str("\n    else{",VV[12]);
  223.     base[3]= make_cons(VV[16],symbol_value(VV[15]));
  224.     bds_bind(VV[15],base[3]);
  225.     base[4]= (V31);
  226.     vs_top=(vs_base=base+4)+1;
  227.     (void) (*Lnk34)();
  228.     vs_top=sup;
  229.     bds_unwind1;
  230.     princ_str("\n    }",VV[12]);
  231.     {object V41 = Cnil;
  232.     bds_unwind1;
  233.     bds_unwind1;
  234.     bds_unwind1;
  235.     VMR6(V41)}
  236. }
  237. /*    local entry for function C1RETURN-FROM    */
  238.  
  239. static object LI7(V43)
  240.  
  241. object V43;
  242. {     VMB7 VMS7 VMV7
  243. TTL:;
  244.     if(!(endp((V43)))){
  245.     goto T107;}
  246.     (void)((*(LnkLI26))(VV[19],small_fixnum(1),small_fixnum(0)));
  247.     goto T105;
  248. T107:;
  249.     if(endp(cdr((V43)))){
  250.     goto T110;}
  251.     if(endp(cddr((V43)))){
  252.     goto T110;}
  253.     V44 = make_fixnum(length((V43)));
  254.     (void)((*(LnkLI43))(VV[19],small_fixnum(2),V44));
  255.     goto T105;
  256. T110:;
  257.     if(type_of(car((V43)))==t_symbol){
  258.     goto T105;}
  259.     (void)(car((V43)));
  260. T105:;
  261.     {register object V45;
  262.     register object V46;
  263.     register object V47;
  264.     register object V48;
  265.     V45= symbol_value(VV[7]);
  266.     V46= car((V43));
  267.     V47= Cnil;
  268.     V48= Cnil;
  269. T120:;
  270.     if(!(endp((V45)))){
  271.     goto T121;}
  272.     {object V49 = (VFUN_NARGS=2,(*(LnkLI27))(VV[21],(V46)));
  273.     VMR7(V49)}
  274. T121:;
  275.     {object V50= car((V45));
  276.     if((V50!= VV[44]))goto T126;
  277.     V47= Ct;
  278.     goto T125;
  279. T126:;
  280.     if((V50!= VV[45]))goto T128;
  281.     V48= Ct;
  282.     goto T125;
  283. T128:;
  284.     V51= structure_ref(car((V45)),VV[0],0);
  285.     if(!((/* INLINE-ARGS */V51)==((V46)))){
  286.     goto T125;}
  287.     {register object V52;
  288.     register object V53;
  289.     V52= (*(LnkLI46))(cadr((V43)));
  290.     V53= car((V45));
  291.     if(((V47))==Cnil){
  292.     goto T136;}
  293.     (void)(structure_set((V53),VV[0],3,Ct));
  294.     goto T134;
  295. T136:;
  296.     if(((V48))==Cnil){
  297.     goto T139;}
  298.     (void)(structure_set((V53),VV[0],2,Ct));
  299.     goto T134;
  300. T139:;
  301.     (void)(structure_set((V53),VV[0],1,Ct));
  302. T134:;
  303.     V54= (*(LnkLI30))(cadr((V52)));
  304.     {object V55 = list(6,VV[19],/* INLINE-ARGS */V54,(V53),(V48),(V47),(V52));
  305.     VMR7(V55)}}}
  306. T125:;
  307.     V45= cdr((V45));
  308.     goto T120;}
  309. }
  310. /*    function definition for C2RETURN-FROM    */
  311.  
  312. static L8()
  313. {register object *base=vs_base;
  314.     register object *sup=base+VM8; VC8
  315.     vs_reserve(VM8);
  316.     {object V56;
  317.     object V57;
  318.     object V58;
  319.     object V59;
  320.     check_arg(4);
  321.     V56=(base[0]);
  322.     V57=(base[1]);
  323.     V58=(base[2]);
  324.     V59=(base[3]);
  325.     vs_top=sup;
  326. TTL:;
  327.     if(((V58))==Cnil){
  328.     goto T145;}
  329.     base[4]= (*(LnkLI47))((V56),(V59));
  330.     vs_top=(vs_base=base+4)+1;
  331.     return;
  332. T145:;
  333.     if(((V57))==Cnil){
  334.     goto T148;}
  335.     base[4]= (*(LnkLI48))((V56),(V59));
  336.     vs_top=(vs_base=base+4)+1;
  337.     return;
  338. T148:;
  339.     base[4]= (V56);
  340.     base[5]= (V59);
  341.     vs_top=(vs_base=base+4)+2;
  342.     (void) (*Lnk49)();
  343.     return;
  344.     }
  345. }
  346. /*    function definition for C2RETURN-LOCAL    */
  347.  
  348. static L9()
  349. {register object *base=vs_base;
  350.     register object *sup=base+VM9; VC9
  351.     vs_reserve(VM9);
  352.     bds_check;
  353.     {object V60;
  354.     object V61;
  355.     check_arg(2);
  356.     V60=(base[0]);
  357.     V61=(base[1]);
  358.     vs_top=sup;
  359. TTL:;
  360.     base[2]= structure_ref((V60),VV[0],5);
  361.     base[3]= structure_ref((V60),VV[0],4);
  362.     bds_bind(VV[10],base[2]);
  363.     bds_bind(VV[9],base[3]);
  364.     base[4]= (V61);
  365.     vs_top=(vs_base=base+4)+1;
  366.     (void) (*Lnk34)();
  367.     bds_unwind1;
  368.     bds_unwind1;
  369.     return;
  370.     }
  371. }
  372. /*    local entry for function C2RETURN-CLB    */
  373.  
  374. static object LI10(V64,V65)
  375.  
  376. object V64;object V65;
  377. {     VMB10 VMS10 VMV10
  378.     bds_check;
  379. TTL:;
  380.     bds_bind(VV[10],VV[22]);
  381.     V66= (*(LnkLI50))((V65));
  382.     bds_unwind1;
  383.     princ_str("\n    unwind(frs_sch(",VV[12]);
  384.     if((structure_ref((V64),VV[0],3))==Cnil){
  385.     goto T160;}
  386.     V67= structure_ref((V64),VV[0],2);
  387.     (void)((*(LnkLI42))(/* INLINE-ARGS */V67));
  388.     goto T158;
  389. T160:;
  390.     V68= structure_ref((V64),VV[0],2);
  391.     (void)((*(LnkLI36))(/* INLINE-ARGS */V68));
  392. T158:;
  393.     princ_str("),Cnil);",VV[12]);
  394.     {object V69 = Cnil;
  395.     VMR10(V69)}
  396. }
  397. /*    local entry for function C2RETURN-CCB    */
  398.  
  399. static object LI11(V72,V73)
  400.  
  401. object V72;object V73;
  402. {     VMB11 VMS11 VMV11
  403.     bds_check;
  404. TTL:;
  405.     princ_str("\n    {frame_ptr fr;",VV[12]);
  406.     princ_str("\n    fr=frs_sch(",VV[12]);
  407.     V74= structure_ref((V72),VV[0],3);
  408.     (void)((*(LnkLI51))(/* INLINE-ARGS */V74));
  409.     princ_str(");",VV[12]);
  410.     princ_str("\n    if(fr==NULL) FEerror(\"The block ~s is missing.\",1,VV[",VV[12]);
  411.     V75= structure_ref((V72),VV[0],6);
  412.     (void)((*(LnkLI52))(/* INLINE-ARGS */V75));
  413.     princ_str("]);",VV[12]);
  414.     bds_bind(VV[10],VV[22]);
  415.     V76= (*(LnkLI50))((V73));
  416.     bds_unwind1;
  417.     princ_str("\n    unwind(fr,Cnil);}",VV[12]);
  418.     {object V77 = Cnil;
  419.     VMR11(V77)}
  420. }
  421. static object  LnkTLI52(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[52],&LnkLI52,1,ap);} /* WT1 */
  422. static object  LnkTLI51(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[51],&LnkLI51,1,ap);} /* WT-CCB-VS */
  423. static object  LnkTLI50(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[50],&LnkLI50,1,ap);} /* C2EXPR* */
  424. static LnkT49(){ call_or_link(VV[49],&Lnk49);} /* C2RETURN-LOCAL */
  425. static object  LnkTLI48(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[48],&LnkLI48,2,ap);} /* C2RETURN-CLB */
  426. static object  LnkTLI47(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[47],&LnkLI47,2,ap);} /* C2RETURN-CCB */
  427. static object  LnkTLI46(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[46],&LnkLI46,1,ap);} /* C1EXPR */
  428. static object  LnkTLI43(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[43],&LnkLI43,3,ap);} /* TOO-MANY-ARGS */
  429. static object  LnkTLI42(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[42],&LnkLI42,1,ap);} /* WT-VS* */
  430. static object  LnkTLI41(){return call_proc0(VV[41],&LnkLI41);} /* CCB-VS-PUSH */
  431. static object  LnkTLI40(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[40],&LnkLI40,1,ap);} /* CLINK */
  432. static object  LnkTLI39(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[39],&LnkLI39,ap);} /* WT-CLINK */
  433. static object  LnkTLI38(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[38],&LnkLI38,1,ap);} /* ADD-SYMBOL */
  434. static object  LnkTLI37(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[37],&LnkLI37,ap);} /* UNWIND-EXIT */
  435. static object  LnkTLI36(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[36],&LnkLI36,1,ap);} /* WT-VS */
  436. static object  LnkTLI35(){return call_proc0(VV[35],&LnkLI35);} /* VS-PUSH */
  437. static LnkT34(){ call_or_link(VV[34],&Lnk34);} /* C2EXPR */
  438. static LnkT33(){ call_or_link(VV[33],&Lnk33);} /* C2BLOCK-LOCAL */
  439. static object  LnkTLI32(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[32],&LnkLI32,2,ap);} /* C2BLOCK-CLB */
  440. static object  LnkTLI31(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[31],&LnkLI31,2,ap);} /* C2BLOCK-CCB */
  441. static object  LnkTLI30(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[30],&LnkLI30,1,ap);} /* RESET-INFO-TYPE */
  442. static object  LnkTLI29(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[29],&LnkLI29,1,ap);} /* C1PROGN */
  443. static object  LnkTLI28(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[28],&LnkLI28,ap);} /* MAKE-BLK */
  444. static object  LnkTLI27(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[27],&LnkLI27,ap);} /* CMPERR */
  445. static object  LnkTLI26(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[26],&LnkLI26,3,ap);} /* TOO-FEW-ARGS */
  446.